var _ = require('lodash');


var fp = require('lodash/fp');

const cars = [{name:'Ferrari FF',horsepower:660,dollar_value:700000,in_stock:true},
    {name:'Spyker c12 Zagato',horsepower:650,dollar_value:648000,in_stock:false},
    {name:'Jaguar xkr-s',horsepower:550,dollar_value:132000,in_stock:false},
    {name:'Audi R8',horsepower:525,dollar_value:114200,in_stock:false},
    {name:'Aston Martin One-77',horsepower:750,dollar_value:185000,in_stock:true},
    {name:'POagani Huayra',horsepower:700,dollar_value:130000,in_stock:false},]



// let isLastInStock = function (cars){
//   let last_car = fp.last(cars)
//   return fp.prop('in_stock',last_car)
// }
// console.log(isLastInStock(cars),324);;

// const f = fp.flowRight(fp.prop('name'),fp.first)
//
// console.log(f(cars));

let _average = function(xs){
  return fp.reduce(fp.add,0,xs)/xs.length
}

// let averageDollarValue = function(cars){
//   let dollar_values = fp.map(function(car){
//     return car.dollar_value
//   },cars)
//   return _average(dollar_values)
// }

// console.log(averageDollarValue(cars),123);

let av = function(cars){
  let dollar_values = fp.map(function(car){
    return car.dollar_value
  },cars)
  return dollar_values
}

const i = fp.flowRight(_average,av);
console.log(i(cars));
